<?php
require_once ('InterpreterContext.php');

/**
 * @author wei.deng
 * @version 1.0
 * @created 05-八月-2011 11:04:55
 */
abstract class Expression extends InterpreterContext
{

	private static $keycount = 0;
	private $key;

	/**
	 * 
	 * @param context
	 */
	abstract public function interpret(InterpreterContext $context) ;

	public function getkey()
	{
		if (!isset($this->key)) {
			self::$keycount++;
			$this->key = self::$keycount;
		}
		return $this->key;
	}

}
?>